home *** CD-ROM | disk | FTP | other *** search
/ NetNews Offline 2 / NetNews Offline Volume 2.iso / news / comp / lang / c++-part2 / 13932 < prev    next >
Encoding:
Text File  |  1996-08-05  |  4.0 KB  |  88 lines

  1. Newsgroups: comp.lang.smalltalk,comp.object,comp.lang.c++,comp.lang.java
  2. Path: EU.net!sun4nl!news
  3. From: mzomer@inter.nl.net (mzomer)
  4. Subject: Re: The Good, the Bad, the Ugly, and the Wicked ...
  5. X-Nntp-Posting-Host: ztm99-18.zoetermeer.nl.net
  6. Message-ID: <Doy5xL.KIq@solair1.inter.NL.net>
  7. Sender: news@solair1.inter.NL.net (News at news)
  8. Reply-To: mzomer@asd.bso.nl
  9. Organization: ORIGIN
  10. X-Newsreader: WinVN 0.93.9
  11. References: <31570B8E.5A12@vmark.com> <4j96el$74n@druid.borland.com>
  12. Mime-Version: 1.0
  13. Date: Thu, 28 Mar 1996 07:13:39 GMT
  14.  
  15. In article <4j96el$74n@druid.borland.com>, pete@borland.com says...
  16. >
  17. >In article <31570B8E.5A12@vmark.com>, jsutherland@vmark.com says...
  18. >>
  19. >>Last year I wrote an article in Object Magazine called, "Smalltalk,
  20. >>C++, and OO COBOL: The Good, the Bad, and the Ugly." (see
  21. >>http://www.tiac.net/users/jsuth/papers/oocobol.html) It got quite a 
  22. >>lot of comment so I am updating it this year to include Java,
  23. >>the Wicked (see http://www.onemind.com/roadkill.html). 
  24. >>
  25. >>The paper incorporates a table with ratings (1) Good, (3) Bad,
  26. >>and (2) Ugly. The target environment is a typical business system
  27. >>built in an MIS shop, i.e. not a number crunching scientific application
  28. >>which would be best written in C++ and optimized to the point where
  29. >>it was really just C code in disguise.
  30. >>
  31. >>People in the newsgroup were not bashful about commenting on the table
  32. >>last year so I am asking for your feedback again this year. I will respond
  33. >>in the newsgroup as to rational for any of these numbers.
  34. >>
  35. >>                                        ST      C++     OOC     Java
  36. >>Flexibility     Dynamic Binding         1       2       2       2
  37. >>                Dynamic Classes         1       3       1       2
  38. >>                Multiple Inheritance    3       2       2       3
  39. >>                Roles                   2       3       3       1
  40. >>Ease of use     Class Libraries         1       3       3       2
  41. >>                Learning Curve          1       3       2       1
  42. >>                Speed of Development    1       3       2       2
  43. >>                Portability             2       3       3       1
  44. >>Support         Tools                   1       1       3       3
  45. >>                Multiple Vendors        2       1       3       1
  46. >>Performance                             2       1       3       3
  47. >>Risk            Garbage Collection      1       3       3       2
  48. >>                Memory Leaks            1       3       1       1
  49. >>                Overwriting Memory      1       3       1       1
  50. >>                Ready for Prime Time    1       1       2       3
  51. >>TOTAL           (low means best)        21      35      34      28
  52. >
  53. >"(low means best)"? Nonsense. Low means that the sum of these arbitrary 
  54. >comparisons is lowest. That's all.  Two "good"s aren't necessarily equivalent 
  55. >to one "ugly". Adding up a bunch of meaningless numbers does not produce a 
  56. >meaningful number.
  57. >
  58. What does the table above tell us? It tells me more about the writer
  59. than about the languages itself.
  60.  
  61. I did some projects with ST and C++ and really the differences
  62. are not that big. But you have to realize that C++ is NOT and OOPL, it
  63. is a multi paradigm language, so comparing C++ with ST or any other
  64. OOPL is not quite fair.
  65.  
  66. Many of the ratings in the table are simply not true. For example
  67. portability. When you use PARTS (from Digitalk) to build your GUI
  68. you're talking about code that can't be ported to any other
  69. smalltalk environment! Or when you're using the ODBC interface
  70. of Digitalk and you want to switch to VisualAge, you a have a major
  71. problem!
  72. And what about pure Object Oriented paradigms like data encapsulation?
  73. ST does not support that basic paradigm, so which of the compared
  74. languages is pure OO? May be Jave but not Smalltalk.
  75.  
  76. For a fair comparison you have to use more items to compare. The
  77. few you used do not give the complete picture!
  78.  
  79. I think that your comparison contains to much black and white,
  80. show me some gray and you will see that the differences are not
  81. that big.
  82.  
  83.  
  84. CU
  85.  
  86. --martin
  87.  
  88.